home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Toolbox / Visual Basic Toolbox (P.I.E.)(1996).ISO / listbox / filler / fillconl.cls < prev    next >
Text File  |  1995-11-22  |  2KB  |  101 lines

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4. END
  5. Attribute VB_Name = "ControlFill"
  6. Attribute VB_Creatable = True
  7. Attribute VB_Exposed = False
  8. 'Purpose:
  9. ' This class is used to fill eather a Standard combobox or Listbox
  10. ' with a recordset that is fed to it through property settings.
  11. 'Properties:
  12. '  "SourceControl" is used to pass ControlFill the Object reference
  13. '        of the control to be filled.
  14. '       Usage;
  15. '       Dim Fill as ControlFill
  16. '       Dim Rs as recordset
  17. '       Set Fill = New ControlFill
  18. '       Fill.SourceControl = Combo1
  19. '  "SourceRS" is used to set the recordset property of ControlFill.
  20. '        Set this property to any recordset that you like.
  21. '       Usage;
  22. '       Fill.SourceRs = Rs
  23. '  "SourceField" is used to set which field you would like to display
  24. '        in the control.
  25. '       Usage;
  26. '        Fill.SourceField = "MyField"
  27. 'Methods:
  28. '  "FillControl" is used to fill the control.
  29. '       Usage;
  30. '       "set other properties first"
  31. '       Fill.FillControl
  32. '
  33. 'Writen by Michael Lee
  34. 'Internet michael.lee@execnet.com
  35. 'Compuserve  75720,1221
  36.  
  37. Option Explicit
  38. Private SourceTable As Recordset
  39. Private SourceFld As String
  40. Private ControlType As Object
  41. Private MyControl As Control
  42.  
  43.  
  44.  
  45.  
  46. Public Function FillControl() As Boolean
  47. 'This function will fill the Combobox or Listbox
  48. 'from the control tables. Returns true if no errors
  49. 'are reported.
  50. SourceTable.MoveFirst
  51. On Error GoTo ClassError
  52. If TypeOf MyControl Is ComboBox Then  'Check what control type was recieved.
  53.     Do Until SourceTable.EOF
  54.         MyControl.AddItem SourceTable(SourceFld)
  55.         SourceTable.MoveNext
  56.     Loop
  57.     FillControl = True
  58. ElseIf TypeOf MyControl Is ListBox Then
  59.     Do Until SourceTable.EOF
  60.         MyControl.AddItem SourceTable(SourceFld)
  61.         SourceTable.MoveNext
  62.     Loop
  63.     FillControl = True
  64. Else
  65.     FillControl = False
  66. End If
  67. SourceTable.Close   'Close Recordset. Delete this line if you want to
  68.                     ' keep recordset active.
  69. Exit Function
  70. ClassError:
  71.     MsgBox Err.Description
  72. End Function
  73.  
  74.  
  75.  
  76.  
  77. Public Property Let SourceControl(Source As Object)
  78. Set MyControl = Source
  79.  
  80. End Property
  81.  
  82.  
  83. Public Property Let SourceField(Source As String)
  84. SourceFld = Source
  85. End Property
  86.  
  87.  
  88.  
  89. Public Property Let SourceRS(Source As Recordset)
  90. Set SourceTable = Source
  91.  
  92. End Property
  93.  
  94.  
  95.  
  96. Private Sub Class_Initialize()
  97.  
  98. End Sub
  99.  
  100.  
  101.